// src/api/job.js
import request from '@/utils/request';

// 获取职位列表（对应后端 index 方法）
export const getJobs = (params) => {
  return request({
    url: '/api/jobs', // 若后端管理员接口有前缀，需改为 /admin/jobs
    method: 'get',
    params
  });
};

// 获取单个职位详情（对应后端 show 方法）
export const getJobDetail = (id) => {
  return request({
    url: `/api/jobs/${id}`, // 或 /admin/jobs/${id}
    method: 'get'
  });
};

// 创建职位（对应后端 create 方法）
export const createJob = (data) => {
  return request({
    url: '/api/jobs', // 或 /admin/jobs
    method: 'post',
    data,
    headers: {
      'admintoken': localStorage.getItem('adminToken') // 使用小写
    }
  });
};

// 更新职位（对应后端 update 方法）
export const updateJob = (id, data) => {
  return request({
    url: `/api/jobs/${id}`, // 或 /admin/jobs/${id}
    method: 'put',
    data
  });
};

// 删除单个职位（对应后端 destroy 方法）
export const deleteJob = (id) => {
  return request({
    url: `/api/jobs/${id}`, // 或 /admin/jobs/${id}
    method: 'delete'
  });
};

// 批量删除职位（需要后端支持，对应后端可能的批量删除接口）
export const batchDeleteJobs = (ids) => {
  return request({
    url: '/api/jobs/batch', // 或 /admin/jobs/batch（需与后端接口路径一致）
    method: 'delete',
    data: { ids } // 后端接收格式：{ ids: [1,2,3] }
  });
};

// 申请职位（对应后端 apply 方法）
export const applyJob = (jobId, data) => {
  return request({
    url: `/api/jobs/${jobId}/apply`, // 或 /admin/jobs/${jobId}/apply
    method: 'post',
    data
  });
};

// 更新职位审核状态（如果需要，对应后端审核接口）
export const updateJobAuditStatus = (id, data) => {
  return request({
    url: `/api/jobs/${id}/audit`, // 或 /admin/jobs/${id}/audit
    method: 'patch',
    data
  });
};